package com.ddwl.funds.dao.model;

import com.ddwl.common.dao.model.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Table;

/**
 * byte_dance_pay
 *
 * @author
 */
@ApiModel(value = "字节跳动支付流水表")
@Getter
@Setter
@Table(name = "byte_dance_pay")
public class ByteDancePay extends BaseModel {


    /**
     * 小程序APPID
     */
    @ApiModelProperty(value = "小程序APPID")
    private String appId;

    /**
     * 开发者侧的订单号, 同一小程序下不可重复
     */
    @ApiModelProperty(value = "开发者侧的订单号, 同一小程序下不可重复")
    private String outOrderNo;

    /**
     * 开发者对核心字段签名,防止传输过程中出现意外
     */
    @ApiModelProperty(value = "开发者对核心字段签名,防止传输过程中出现意外")
    private String sign;

    /**
     * 支付价格; 接口中参数支付金额单位为[分]
     */
    @ApiModelProperty(value = "支付价格; 接口中参数支付金额单位为[分]")
    private Integer totalAmount;

    /**
     * 商品描述; 长度限制 128 字节，不超过 42 个汉字
     */
    @ApiModelProperty(value = "商品描述; 长度限制 128 字节，不超过 42 个汉字")
    private String subject;

    /**
     * 商品详情
     */
    @ApiModelProperty(value = "商品详情")
    private String body;

    /**
     * 订单过期时间(秒); 最小 15 分钟，最大两天
     */
    @ApiModelProperty(value = "订单过期时间(秒); 最小 15 分钟，最大两天")
    private Integer validTime;

    /**
     * 开发者自定义字段，回调原样回传
     */
    @ApiModelProperty(value = "开发者自定义字段，回调原样回传")
    private String cpExtra;

    /**
     * 支付状态（0创建10提交支付20支付成功30支付失败）
     */
    @ApiModelProperty(value = "支付状态（0创建10提交支付20支付成功30支付失败）")
    private Integer status;

    /**
     * 商户自定义回调地址
     */
    @ApiModelProperty(value = "商户自定义回调地址")
    private String notifyUrl;

    /**
     * 第三方平台服务商 id，非服务商模式留空
     */
    @ApiModelProperty(value = "第三方平台服务商 id，非服务商模式留空")
    private String thirdpartyId;

    /**
     * 是否屏蔽担保支付的推送消息，1-屏蔽 0-非屏蔽，接入 POI 必传
     */
    @ApiModelProperty(value = "是否屏蔽担保支付的推送消息，1-屏蔽 0-非屏蔽，接入 POI 必传")
    private Integer disableMsg;

    /**
     * 担保支付消息跳转页
     */
    @ApiModelProperty(value = "担保支付消息跳转页")
    private String msgPage;

    /**
     * 状态码 0-业务处理成功
     */
    @ApiModelProperty(value = "状态码 0-业务处理成功")
    private Integer errNo;

    /**
     * 错误提示信息
     */
    @ApiModelProperty(value = "错误提示信息")
    private String errTips;

    /**
     * 拉起收银台的 orderInfo
     */
    @ApiModelProperty(value = "拉起收银台的 orderInfo")
    private String data;

    /**
     * Unix 时间戳，10 位，整型数
     */
    @ApiModelProperty(value = "Unix 时间戳，10 位，整型数")
    private Integer timestamp;

    /**
     * 随机数
     */
    @ApiModelProperty(value = "随机数")
    private String nonce;

    /**
     * 订单信息的 json 字符串
     */
    @ApiModelProperty(value = "订单信息的 json 字符串")
    private String msg;

    /**
     * 回调类型标记，支付成功回调为"payment"
     */
    @ApiModelProperty(value = "回调类型标记，支付成功回调为 payment")
    private String type;

    /**
     * 签名
     */
    @ApiModelProperty(value = "签名")
    private String msgSignature;

    /**
     * 返回的单号
     */
    @ApiModelProperty(value = "返回的单号")
    private String orderId;

    /**
     * 支付信息
     */
    @ApiModelProperty(value = "支付信息")
    private String paymentInfo;

}